---
title: Husky
description: Rulează automat Ultracite pe fișierele Git pregătite (staged) folosind Husky
---

Ultracite oferă o integrare perfectă cu [Husky](https://typicode.github.io/husky/), un instrument popular pentru gestionarea hook-urilor Git. Această integrare configurează automat hook-urile pre-commit pentru a se asigura că codul tău este formatat corect înainte de fiecare commit.

## Ce este Husky?

Husky este un instrument care facilitează utilizarea hook-urilor Git în proiectul tău. Hook-urile Git sunt scripturi care rulează automat în anumite momente din fluxul de lucru Git, cum ar fi înainte de a face commit sau de a trimite (push) cod. Husky simplifică procesul de configurare și gestionare a acestor hook-uri.

## Cum folosește Ultracite Husky

Când inițializezi Ultracite în proiectul tău, acesta poate configura automat Husky pentru a rula formatarea codului înainte de fiecare commit. Aceasta asigură că:

- Toate codurile comise respectă standarde de formatare constante
- Verificările calității codului sunt aplicate automat
- Membrii echipei nu trebuie să-și amintească să formateze codul manual
- Repository-ul tău menține un stil de cod curat și consecvent

## Comportamentul hook-ului pre-commit

Integrarea Ultracite cu Husky creează un hook pre-commit care rulează următoarea comandă:

```bash
npx ultracite fix
```

Această comandă:
- Rulează linterul și formatterul Biome pe baza de cod
- Remediază automat problemele de formatare acolo unde este posibil
- Se asigură că toate fișierele staged respectă standardele de cod ale proiectului tău
- Prev
ine commit-urile care ar introduce inconsistențe de formatare

## Configurare automată

În timpul procesului de inițializare (`ultracite init`), dacă selectezi opțiunea Husky, Ultracite:

1. **Instalează Husky**: Adaugă Husky ca dependență de dezvoltare în proiectul tău
2. **Creează fișierul hook**: Configurează fișierul `.husky/pre-commit` cu comanda de formatare
3. **Gestionează configurațiile existente**: Dacă ai deja Husky configurat, actualizează hook-ul pre-commit existent în loc să-l suprascrie

## Detalii despre integrare

Integrarea cu Husky include câteva funcționalități inteligente:

### Gestionarea dependențelor
- Instalează automat Husky ca dependență de dezvoltare folosind managerul de pachete al proiectului tău
- Folosește comanda corespunzătoare a managerului de pachete (`npm install -D`, `yarn add -D`, `pnpm add -D`, etc.)

### Gestionarea hook-urilor
- **Proiecte noi**: Creează un nou `.husky/pre-commit` cu comanda ultracite fix
- **Proiecte existente**: Adaugă comanda Ultracite la hook-ul pre-commit existent, păstrând celelalte hook-uri pe care le-ai configurat

### Structura fișierelor
Integrarea creează sau modifică:
```
.husky/
└── pre-commit    # Contains the formatting command
```

## Beneficii

### Stil de cod consecvent
Fiecare commit urmează automat standardele de formatare ale proiectului tău, eliminând discuțiile despre stil și inconsistențele.

### Control de calitate automatizat
Prinde problemele de formatare înainte ca acestea să ajungă în repository, menținând un istoric de commit curat.

### Colaborare în echipă
Toți membrii echipei respectă automat aceleași standarde de formatare fără intervenție manuală.

### Optimizare CI/CD
Reduce eșecurile pipeline-urilor CI/CD cauzate de probleme de formatare, deoarece codul este pre-formatat local.

## Integrarea în fluxul de lucru

Cu integrarea Husky activată, fluxul tău obișnuit de lucru Git devine:

1. **Fă modificări** în fișierele de cod
2. **Pregătește schimbările** cu `git add`
3. **Comite schimbările** cu `git commit`
4. **Hook-ul pre-commit rulează** automat, formatând fișierele staged
5. **Commit-ul continuă** cu codul formatat corect

Dacă formatter-ul face modificări, va trebui să pui și acele modificări în staged și să le comiți.

## Personalizare

Deși Ultracite configurează valori implicite rezonabile, poți personaliza comportamentul:

- Modifică `.husky/pre-commit` pentru a adăuga comenzi suplimentare
- Configurează setările Biome pentru a ajusta regulile de formatare
- Adaugă și alte verificări pre-commit pe lângă formatarea oferită de Ultracite

## Depanare

### Hook-ul nu rulează
Dacă hook-ul pre-commit nu se execută:
- Asigură-te că Husky este instalat: `npm ls husky`
- Verifică că `.husky/pre-commit` există și este executabil
- Verifică că hook-urile Git sunt activate în repository-ul tău

### Probleme de permisiuni
Pe sistemele de tip Unix, asigură-te că fișierul hook este executabil:
```bash
chmod +x .husky/pre-commit
```

### Ocolirea hook-urilor
În cazuri rare în care trebuie să sari peste hook-ul pre-commit:
```bash
git commit --no-verify
```

Folosește această opțiune cu moderație, deoarece ocolește formatarea automată care menține baza de cod consecventă.